"use strict";

// 获取命令行参数
const args = process.argv.slice(2);

// 检查参数数量
if (args.length < 2) {
  console.log("使用方法: node encodeBuffer.js <username> <password>");
  console.log("示例: node encodeBuffer.js admin 123456");
  process.exit(1);
}

// 获取用户名和密码参数
const username = args[0];
const password = args[1];

// 输出原始用户名和密码到控制台
console.log("原始信息:");
console.log("用户名:", username);
console.log("密码:", password);
console.log("");

// 使用 Buffer 进行 base64 编码
const usernameBuffer = Buffer.from(username, 'utf8');
const passwordBuffer = Buffer.from(password, 'utf8');

const usernameBase64 = usernameBuffer.toString('base64');
const passwordBase64 = passwordBuffer.toString('base64');

// 输出编码后的结果
console.log("Base64 编码结果:");
console.log("用户名编码:", usernameBase64);
console.log("密码编码:", passwordBase64);
console.log("");

// 可选：输出组合编码（用户名:密码）
const combined = `${username}:${password}`;
const combinedBuffer = Buffer.from(combined, 'utf8');
const combinedBase64 = combinedBuffer.toString('base64');
console.log("组合编码 (用户名:密码):", combinedBase64);
